package two_day;

/**
 * 猴子吃桃问题
 */
// 猴子第一天摘下若干个桃子，当时就吃了一半，还不过瘾，就又吃了一个。第二天又将剩下的桃
// 子吃掉一半，又多吃了一个。以后每天都吃前一天剩下的一半零一个。到第 10 天在想吃的时候就剩一个桃子了,求第
// 一天共摘下来多少个桃子？
public class MonkeyEatPeach {
    public static void main(String[] args) {
        int days = 2;
        int n = 19;
        System.out.println("第一天总共摘下" + allPeach(n, days));
    }

    /**
     * 递归计算所有桃子数
     * @param n 剩余的桃子数
     * @param days 某一天
     * @return
     */
    public static int allPeach(int n, int days){
        // 递归出口
        if (days == 1) {
            return n;
        }
        int res = allPeach((n + 1) * 2 , days -  1);
        return res;
    }
}
